A r t i c l e s
Navigation

Note: This site is
a bit older, personal views
may have changed.

M a i n P a g e

D i r e c t o r y

PASCAL SUCKS


...but sucks so much less than other languages.
  • C is a quick hack of a compiled language that has grown exponentially by adding crap to it, and has standards with ANSI in front of it to make the language sound legitimate, has anal case sensitivity that people never need, and is generally fast.
    :-( :-( :-|

  • Perl is a quick hack of a shell scripting language that has grown exponentially by adding crap to it, and has lots of crap available for quick hacks.
    :-( :-|

  • Java is a structured OO language with tons of libraries, that requires massive CPU power to do anything useful, tons of typing to do simple things (much more than Pascal or C), a VM engine (interpretter). But nothing available for quick hacks, and the interpretter is written in C.
    :) :-| :-(

  • Delphi is a properly structured language with many libraries, OO available at your side, requires no massive CPU power to do anything useful, and no VM engine, geared toward MS Windows but has Kylix. But the compiler is written in C.
    :) :-| :-(

  • FreePascal is a properly structured language with many libraries, OO available at your side, requires no massive CPU power to do anything useful, and no hotspot VM engine, with QuikPas compilers and interpretters available for quick hacks. And the compiler/interpretters are written in Pascal.
    :) :) :)


Some say it sucks because of "verboseness" such as begin/end. 

 Comment:
  On the screen, begin/end help you locate code blocks much easier. Especially high 
  resolution monitors. In other languages, parenthesis code markers (such as in C) 
  are very hard to see on a monitor. They can mix in with regular brackets and even
  pipe characters. Even if your syntax editor bolds them for you.

  If you are angry about begin/end and function/procedure tokens in the syntax being
  verbose, take a look at QuikPas. Then you have no excuses, because QuikPas is not
  a new language, but a compatible Pascal counterpart.  

Some say it sucks because there aren't enough code libraries Comment: Pascal is in in fact much better in this area than several other languages, and more libraries are being added daily. For example, Torry.net, Pascal Server Pages, Regular Expression units, FreePascal contributed units section, string units, sockets units, GUI graphics library, are being worked on and updated every day by several Pascal folks.
Some say it sucks because you have to compile Pascal. Comment: The Pascal compiler can compile a PascalScript and QuikPas interpreter. Just that no one has used PascalScript or QuikPas in great quantity yet. That doesn't mean that you "have to compile Pascal". Far from the truth. This is not to say that we aren't going to make PascalScript and/or QuikPas popular and change this situation. Therefore, no, you do not have to compile Pascal if you do not want to.
Some say it sucks because it is a bondage and discipline language. Comment: There is a difference between bondage versus common sense. Case sensitivity is anal. Case sensitivity is bondage and discipline. Leaving your room messy when someone has offered you to clean it for you automatically, is lacking common sense. Stating that you have an integer you are working with beforehand, is not bondage and discipline.
Some say it sucks because it can't be used on the web. Comment: So CGI is nice, but maybe that's not what you wanted to hear. Take look at Pascal Server Pages, and in the future, PascalScript.
Some say it sucks because you have to declare things, type verbose tokens, and you end up spending more time on typing. Comment: You end up commenting your code extra amounts when you use loose typing. These comments in your code end up costing you the same time it would have just to tell the person in the syntax, while keeping the code neater. And if you don't comment your loose typing, the code becomes unreadable. Commenting your loose code takes more time. Also see QuikPas, if you are so worried that extra typing time. And in some cases typing time does matter, we agree, like in a regex for example. Quick on the fly hacks.
Some say it sucks because it is a teaching language Comment: Java and C are the teaching languages. That's what people learn in university. If teaching languages suck, surely Java and C suck. Hockey is a nice sport to teach a kid. What's your point?
Some say it sucks because Brian Kerinighan said so. Comment: Brian K also wrote books on Pascal and sells them still today. He profits on Pascal. Profit and sell something to people you do not believe in? Look on Amazon for his Pascal books he is still prostituting today. If he is selling people bad apples, that is dishonest and disrespectful. See Pargence.
Some say it sucks because it doesn't have a pre-processor. Comment: Yes it does. Take a look at {$DEFINE}. The reason a pre-processor is not encouraged, and IS available and recommended as an option to you, is because we think it's a feature, but not an essential part of the language. Even C programmers always admit that preprocessor can be abused easily, even if they didn't intend it to. It is then wise, for a language to not encourage the preprocessor, but offer it as an option. What is possibly wrong with this logic, something that for example Pascal has recommended?
Some, even still, after we already politely explained, say it sucks because of tokens like: if, then, and, end, begin, to, until, repeat, while: Comment: When a human being is proto-typing code, at some point along the line, he must go through in his brain what sort of action is going to be happening when his code follows through. He must prototype his code inside his head before he writes it down. Let's say the programmer is just working on other things and doesn't have time to implement the code yet. He writes down the following prototypes just for temporary, since he wants to move on to more important code. procedure Main.HideConsole; begin showmessage('STILL TODO!'); // TODO: hide the console only if shown // if console is showing ... then // begin // end end; procedure Main.ShowConsole; begin showmessage('STILL TODO!'); // TODO: show the console only if hidden // if console is hidden... then // begin // end end; Could it be any more OBVIOUS and READABLE than that? Is there an advantage to NOT being obvious and NOT being readable? As you can see, his prototype here is in English, i.e. source code comments. He ends up stating that "if console is hidden.. then". These are the words that he comes up with when cycling through his thoughts. He does NOT come up with the following thoughts while he is thinking: // TODO: show the console only if hidden # bin/bash/asslanguage if cs1 |\hhdn *(^&( { # <-- this ugly crap here makes the console hide } # <-- this thing here happens to end the statement # <-- I spent so much time commenting the ugly code, # and converting the symbols into english, that I # could have just done it properly in the first # place with a real programming language. The coder now decides it is time to write and complete the code, so here he goes: // show the console only if hidden if console.hidden then begin console.show; end; In the above snippet, the comment "show console only if hidden" can even be completely removed from the file, because the code is so obvious and sensible. If you see disadvantages in being obvious and sensible: go away, now. We don't tolerate people who aren't sensible on this page. As you can see, he just shortened his prototype English thoughts into dot-notation syntax. Being TOO verbose would be using actual English paragraphs for his code. Being TOO terse would be using perl, C, PHP, TCL, etc. Being somewhere between, within perfect readability and while still saving screen space, without being direct and actual English, would be Pascal. The time you spend converting thoughts into symbols or other bizarre concoctions is pure waste. You might as well just ring it out loud, say it out loud, pronounce it out loud. If my code is going to work then begin coding, end. If my console is showing then begin hiding the console, end. Shortening the above two sentences is fine, but converting them into bizarre symbols, while not even saving much or any screen space at all, is stupid. Understand that yes, in some cases symbolic code is nice such as in throw away short term situations (regular expressions). But symbolic concoctions are not something you want to be constantly converting and running to the manual for, in everyday, all day long coding.

See also: JAVA SUCKS, TCL SUCKS, PERL SUCKS, PYTHON SUCKS

About
This site is about programming and other things.
_ _ _